<?php
declare (strict_types = 1);

namespace plugin\ky_black\app\admin\model;

use support\Model;

class BusinessType extends Model
{
    /**
     * 关联到模型的数据表
     *
     * @var string
     */
    protected $table = 'business_type';

    /**
     * 可以批量赋值的属性
     *
     * @var array
     */
    protected $fillable = [
        'code',
        'name',
        'icon',
        'description',
        'status',
        'sort'
    ];

    /**
     * 追加到模型数组表单的访问器
     *
     * @var array
     */
    protected $appends = [
        'status_text'
    ];

    /**
     * 获取状态文本
     */
    public function getStatusTextAttribute()
    {
        $status = [
            0 => '禁用',
            1 => '启用'
        ];
        return $status[$this->status] ?? '未知';
    }

    /**
     * 获取所有启用的类型
     */
    public static function getActiveTypes()
    {
        $types = self::where('status', 1)
            ->orderBy('sort', 'asc')
            ->orderBy('id', 'asc')
            ->get(['code', 'name'])
            ->pluck('name', 'code')
            ->toArray();
        
        return $types;
    }
} 